package com.xfcy.blog.vo;

import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.List;

/**
 * 文章详情
 * @author 晓风残月Lx
 * @date 2023/4/12 18:05
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
public class ArticleInfoVO {
    //主键id
    private Long id;
    //分类id
    private Long categoryId;
    //文章标题
    private String title;
    //文章封面地址
    private String avatar;
    //文章简介
    private String summary;
    //文章内容 （最多两百字）
    private String content;
    //文章内容md版
    private String contentMd;
    //是否是私密文章 0 否 1是
    private Integer isSecret;
    //是否原创  0：转载 1:原创
    private Integer isOriginal;
    //是否置顶 0否 1是
    private Integer isStick;
    // 是否发布 0：下架  1：发布
    private Integer isPublish;
    //转载地址
    private String originalUrl;
    //文章点赞量
    private Long likeCount;
    //文章阅读量
    private Long quantity;
    //创建时间
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private LocalDateTime createTime;
    //seo关键词
    private String keywords;
    //修改时间
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private LocalDateTime updateTime;

    /**
     * 分类名称
     */
    private String categoryName;

    /**
     * 标签集合
     */
    private List<TagVO> tags = new ArrayList<>();

    /**
     * 上一篇
     */
    private ArticleVO lastArticle;

    /**
     * 下一篇
     */
    private ArticleVO nextArticle;

    /**
     * 推荐
     */
    List<ArticleVO> recommendArticleList = new ArrayList<>();
    /**
     * 最新文章
     */
    private List<ArticleVO> newestArticleList = new ArrayList<>();

}
